/*
 * Copyright (c) 2013.
 * 游戏服务器核心代码编写人陈磊拥有使用权
 * 联系方式：E-mail:13638363871@163.com ;qq:502959937
 * 个人博客主页：http://my.oschina.net/chenleijava
 */

package com.dc.gameserver.serverCore.service.managerService;

import com.dc.gameserver.serverCore.service.character.PlayerInstance;
import com.dc.gameserver.hardCode.PkStatus;
import javolution.util.FastMap;
import javolution.util.FastTable;

import java.util.List;
import java.util.Map;

/**
 * @author : 石头哥哥
 * Date: 13-10-26</br>
 * Time: 上午11:24</br>
 * Package: Server.ServerCore.Service.LicensingProcess</br>
 * 注解： 玩家对象资源管理
 */
public class PlayerManagerService {

    /**当前游戏服务器在线游戏角色列表* */
    public static final Map<Integer, PlayerInstance> INTEGER_PLAYER_INSTANCE_MAP =
            new FastMap<Integer, PlayerInstance>().shared();

    /**
     * player不包含返回ip列表
     * @return
     */
     public static List<Integer> getPlayerIDList(PlayerInstance player){
        List<Integer> IDlist= new FastTable<Integer>();
        int playerID=player.getID();
        for (Map.Entry<Integer, PlayerInstance> entry:INTEGER_PLAYER_INSTANCE_MAP.entrySet()){
            int ID=entry.getKey();
              if (ID!=playerID&&entry.getValue().getPkStatus()== PkStatus.NO_PK){
                  IDlist.add(ID);
              }
        }
        return IDlist;   //may be size ==0
     }

}
